// 导入 Node.js 的 URL 模块工具函数
import { fileURLToPath, URL } from 'node:url'

// 导入 Vite 的配置定义方法和 Vue 插件
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'

/**
 * Vite 配置文件
 * 文档参考：https://vitejs.dev/config/
 */
export default defineConfig({
  // 插件配置
  plugins: [
    vue(), // 启用 Vue 单文件组件支持
  ],

  // 开发服务器配置
  server: {
    // 代理配置（用于解决开发环境跨域问题）
    proxy: {
      "/api": {
        target: "http://localhost:8079", // 后端 API 地址
        changeOrigin: true, // 修改请求头中的 Origin 为目标地址
        // 其他可选参数：
        // rewrite: path => path.replace(/^\/api/, '') // 路径重写规则
      }
    },
    port: 8082 // 指定开发服务器端口
  },

  // 模块解析配置
  resolve: {
    // 路径别名配置
    alias: {
      '@': fileURLToPath(new URL('./src', import.meta.url)) // 将 @ 映射到 src 目录
      // 可以添加更多别名：
      // '@components': fileURLToPath(new URL('./src/components', import.meta.url))
    }
    // 其他可选配置：
    // extensions: ['.js', '.vue', '.json'] // 自动解析的文件扩展名
  }

  // 其他常用配置（示例）：
  // base: '/', // 部署基础路径
  // build: {
  //   outDir: 'dist', // 构建输出目录
  //   assetsInlineLimit: 4096 // 静态资源内联阈值（字节）
  // }
})